In planning, budgeting and forecasting scenarios a common calculation is to set a high level goal and then break it down to lower level numbers that support the goal. These types of calculations are called allocations. Existing methods for allocation are typically ad hoc and the underlying calculations are usually performed by specialized calculation engines.